package com.generalsentiment.evaluation

import java.io.File

abstract class SentimentTest() {
  def makeQueries(destination: File): Unit
}

object SentimentTest {
  type Date = Int
  def apply(sourceFile: File): Option[SentimentTest] = sourceFile match {
    case _ if sourceFile.getName().endsWith("rank") => new Some(new RankTest(sourceFile))
    case _ if sourceFile.getName().endsWith("pair") => new Some(new PairedTest(sourceFile))
    case _ if sourceFile.getName().endsWith("sing") => new Some(new SingleTest(sourceFile))
    case _ => None
  }
}
